<?php

namespace App\JsonRpc;

use App\Utils\ResultUtil;
use Hyperf\RpcServer\Annotation\RpcService;

/**
 * 注意，如希望通过服务中心来管理服务，需在注解内增加 publishTo 属性
 */
#[RpcService(name: "CalculatorService", server: "jsonrpc-http", protocol: "jsonrpc-http", publishTo: "nacos")]
class CalculatorService implements CalculatorServiceInterface
{
    // 实现一个加法方法，这里简单的认为参数都是 int 类型
    public function sum(int $a, int $b): array
    {
        // 这里是服务方法的具体实现
        return ResultUtil::success(['sum' => $a + $b]);
    }

    public function sumPro(int $a, int $b): array
    {
        return ResultUtil::success(['sum' => ($a + $b) * 2]);
    }
}